﻿using System;
using System.Collections.Generic;

namespace BizElements.Core
{
    /// <summary>Entity object models data structure and behavior of a database entity.</summary>
    /// <seealso cref="EntityExtensions"/><seealso cref="EntityModelBase"/>
    public interface IEntity
    {
        /// <summary>
        /// IDbTable object that contains metadata for the entity's table/view.
        /// </summary>
        IDbTable Table { get; }

        /// <summary>
        /// Gets or sets the value which indicates the state of entity in regard to data-source.
        /// </summary>
        EntityState EntityState { get; set; }
    }
}